#!/usr/bin/env bash

_ap_bin()
{
    local cur opts
    COMPREPLY=()
    cur="${COMP_WORDS[COMP_CWORD]}"

    opts="--help -h"
    opts+=" --wipe -w"
    opts+=" --unhide-groups -u"
    opts+=" --speedup -s"
    opts+=" --rate -r"
    opts+=" --console -C"
    opts+=" --instance -I"
    opts+=" --synthetic-clock -S"
    opts+=" --home -O"
    opts+=" --model -M"
    opts+=" --fg -F"
    # Prevent word reuse
    lim=$((COMP_CWORD - 1))
    for i in $(seq 0 $lim); do
      if [[ $opts == *"${COMP_WORDS[i]}"* ]]; then
        opts=${opts//${COMP_WORDS[i]}/}
        opts=${opts//--${COMP_WORDS[i]}/}
      fi
    done
    COMPREPLY=( $(compgen -W '$(_parse_help "$1")' -- "$cur") $(compgen -W "${opts}" -- ${cur}) )
}


complete -F _ap_bin arducopter
complete -F _ap_bin arduplane
complete -F _ap_bin ardusub
complete -F _ap_bin arducopter
